// commitlint.config.cjs
/** @type {import('cz-git').UserConfig} */
module.exports = {
	extends: ['@commitlint/config-conventional'],
	rules: {
		'type-enum': [
			2,
			'always',
			[
				'feat', // 新增功能
				'update', // 更新功能
				'fix', // 修复功能bug
				'merge', // 合并分支
				'flag', // 标记版本
				'refactor', // 重构功能
				'perf', // 性能优化
				'revert', // 回退提交
				'style', // 代码的样式美化(修改空白字符，格式缩进，补全缺失的分号等)
				'build', // 修改项目构建工具(例如 glup，webpack，rollup 的配置等)的提交
				'docs', // 文档新增、改动
				'test', // 增加测试、修改测试
				'chore', // 不修改src或者test的其余修改，例如构建过程或辅助工具的变动
			],
		],
		'scope-empty': [0],
		'scope-case': [0],
		'subject-full-stop': [0],
		'subject-case': [0],
	},
	prompt: {
		alias: { fd: 'docs: fix typos' },
		messages: {
			type: '选择你要提交的类型 :',
			scope: '选择一个提交范围（可选）:',
			customScope: '请输入自定义的提交范围 :',
			subject: '填写简短精炼的变更描述 :\n',
			body: '填写更加详细的变更描述（可选）。使用 "|" 换行 :\n',
			// breaking: '列举非兼容性重大的变更（可选）。使用 "|" 换行 :\n',
			// footerPrefixesSelect: '选择关联issue前缀（可选）:',
			// customFooterPrefix: '输入自定义issue前缀 :',
			// footer: '列举关联issue (可选) 例如: #31, #I3244 :\n',
			// generatingByAI: '正在通过 AI 生成你的提交简短描述...',
			// generatedSelectByAI: '选择一个 AI 生成的简短描述:',
			confirmCommit: '是否提交或修改commit ?',
		},
		types: [
			{ value: 'feat', name: 'feat:     ✨  新增功能', emoji: ':sparkles:' },
			{ value: 'update', name: 'update:   🐒  更新', emoji: ':monkey:' },
			{ value: 'fix', name: 'fix:      🐛  修复缺陷', emoji: ':bug:' },
			{ value: 'style', name: 'style:    🎨  代码的样式美化', emoji: ':art:' },
			{ value: 'merge', name: 'merge:    🔀  合并分支', emoji: ':twisted_rightwards_arrows:' },
			{ value: 'chore', name: 'chore:    🔨  其他修改', emoji: ':hammer:' },
			{ value: 'flag', name: 'flag:     🚩  标记版本', emoji: ':triangular_flag_on_post:' },
			{ value: 'build', name: 'build:    📦️  构建相关', emoji: ':package:' },
			{ value: 'perf', name: 'perf:     ⚡️  性能提升', emoji: ':zap:' },
			{ value: 'ci', name: 'ci:       🎡  持续集成', emoji: ':ferris_wheel:' },
			{ value: 'revert', name: 'revert:   ⏪️  回退代码', emoji: ':rewind:' },
			{ value: 'refactor', name: 'refactor: ♻️   代码重构', emoji: ':recycle:' },
			{ value: 'test', name: 'test:     ✅  测试相关', emoji: ':white_check_mark:' },
			{ value: 'docs', name: 'docs:     📝  文档更新', emoji: ':memo:' },
		],
		useEmoji: true,
		emojiAlign: 'center',
		useAI: false,
		aiNumber: 1,
		themeColorCode: '',
		scopes: [],
		allowCustomScopes: true,
		allowEmptyScopes: true,
		customScopesAlign: 'bottom',
		customScopesAlias: '以上都不是？我要自定义',
		emptyScopesAlias: '跳过',
		upperCaseSubject: false,
		markBreakingChangeMode: false, // breaking
		allowBreakingChanges: ['feat', 'update', 'fix'],
		breaklineNumber: 100,
		breaklineChar: '|',
		skipQuestions: [],
		customIssuePrefixAlign: 'top',
		emptyIssuePrefixAlias: '跳过',
		customIssuePrefixAlias: '自定义前缀',
		allowCustomIssuePrefix: false,
		allowEmptyIssuePrefix: true,
		confirmColorize: true,
		scopeOverrides: undefined,
		defaultBody: '',
		defaultIssues: '',
		defaultScope: '',
		defaultSubject: '',
	},
}
